User loginNavigation |
Library-Centric Software Design LCSD'06
I think this is an important subject. Take a look at the CFP and see if you can contribute something!
I think languages have some way to go in order to enable really good libraries. Among the topics mentioned in the CFP that are of particular interest are: Design of language facilities and tools in support of library definition and use; Extensibility, parameterization, and customization; Distribution of libraries; By Ehud Lamm at 2006-05-18 15:26 | Software Engineering | login or register to post comments | other blogs | 5397 reads
Paul Vick: BASIC principles
The principles are enumerated here. Yet another one of those "language philosophy" kind of things. While the list isn't surprising, I think it's good to try to be explicit about these things. This allows you to reflect on them, and allows others to criticize both the choice of principles and the way they are manifested in the language... The Problem With ThreadsLee, E.A., "The Problem With Threads", IEEE Computer, vol. 36, no. 5, May 2006, pp. 33-42, available online as U.C. Berkeley EECS Department Technical Report UCB/EECS-2006-1
Many of the points about concurrency raised in this article will be familiar to LtU readers, particularly those who have any familiarity with CTM, but the article does provide a good summary of the issues. Beyond that, what I found interesting (especially from a PLT perspective) is Lee's contention that the emphasis on developing general-purpose languages that support concurrency is misplaced. Lee believes that a better approach is to develop what he calls "coordination languages", which focus on arranging sequential components written in conventional languages into some concurrent configuration (I suppose that piping in a Unix shell could be considered a limited coordination language). Quoting from the article:
It's not immediately obvious to me that there's anything preventing a "coordination language" from being a well-defined subset of some more general language. Lee's key point seems to involve making coordination constructs syntactically distinct (e.g. block diagrams vs. text). Which, of course, raises some interesting questions about whether other important facets of a language (such as the language of type declarations) should also have strongly syntactically-distinct representations, and just how homogeneous (Lisp anyone?) the syntax of a language should be... Jumbo Lambda CalculusTwo new papers by Paul Blain Levy, "Jumbo Lambda Calculus" and the extended version "Jumbo Connectives in Type Theory and Logic", are available on his web page. Part of the abstract:
(From the types list.) By Matt Hellige at 2006-05-12 16:23 | Lambda Calculus | Semantics | Type Theory | 3 comments | other blogs | 18988 reads
The case for Semantic AnalysisHow to statically ensure software reliability is aimed mostly at C programmers in the embedded space:
There is a conspicuous silence in the article on how PLs might help the tools. And I can't help but think that the static semantic analysis amounts to Constraint Programming (propagate and branch). Building Interpreters by Composing MonadsBuilding Interpreters by Composing Monads
So actually it is about building interpreters by composing pseudomonads. PS: I stumbled upon this paper while trying to factor an interpreter into a set of features (and yes, I tried to package them as monads). By Andris Birkmanis at 2006-05-11 12:29 | Implementation | Semantics | Type Theory | 19 comments | other blogs | 13576 reads
Block performance in Ruby
Don Box does some experimenting... By Ehud Lamm at 2006-05-10 19:17 | Functional | Implementation | Ruby | 11 comments | other blogs | 19090 reads
MathLangMathLang is next to what the name suggest: a mathematical language, also a framework for writing mathematical texts. It allows for more formalisation than the normal Common Mathematical Language does in such a way that one can check the correctness of the text (on some given level) but also convert it to even more stringent forms so that it can be checked by proof checkers such as (Mizar, Coq, PVS, etc.). Computer Science Looks for a Remake
This piece isn't directly related to programming languages (in fact, I think this is one of the problems with it), but it will interest many LtU regulars. To make this more relevant for LtU, let me rephrase the question: What's the most important and interesting CS research at the moment, from a PL perspective? HashCaml--an extension of the OCaml bytecode compiler with support for type-safe marshalling and related naming features.Peter Sewell and crew follow up on their work on Acute:
By Paul Snively at 2006-05-08 04:41 | General | Implementation | Meta-Programming | 1 comment | other blogs | 9615 reads
|
Browse archives
Active forum topics |
Recent comments
2 weeks 3 days ago
2 weeks 3 days ago
2 weeks 5 days ago
2 weeks 5 days ago
3 weeks 3 days ago
3 weeks 3 days ago
3 weeks 3 days ago
6 weeks 3 days ago
7 weeks 2 days ago
7 weeks 2 days ago